\documentstyle[a4,makeidx,verbatim,texhelp,fancyhea,mysober,mytitle]{report}%
\input{psbox.tex}
\newcommand{\commandref}[2]{\helpref{{\tt $\backslash$#1}}{#2}}%
\newcommand{\commandrefn}[2]{\helprefn{{\tt $\backslash$#1}}{#2}\index{#1}}%
\newcommand{\commandpageref}[2]{\latexignore{\helprefn{{\tt $\backslash$#1}}{#2}}\latexonly{{\tt $\backslash$#1} {\it page \pageref{#2}}}\index{#1}}%
\newcommand{\indexit}[1]{#1\index{#1}}%
\newcommand{\inioption}[1]{{\bf {\tt #1}}\index{#1}}%
\parskip=10pt%
\parindent=0pt%
%\backgroundcolour{255;255;255}\textcolour{0;0;0}% Has an effect in HTML only
\winhelpignore{\title{Manual for CDex 1.70 beta:\\A CD extraction utility}%
\author{Albert L Faber}%
\date{April 2003}%
}%
\winhelponly{\special{#\{\footnote HIDR_MAINFRAME\}}}
\winhelponly{\title{Manual for CDex 1.70 beta}%
\author{(c) 1998-2006 by Albert L Faber & Sean M Burke}%
}%
\makeindex%
\begin{document}%
\maketitle%
$$\imagemap{1cm;0cm}{Logo.bmp}{Logo}$$
\pagestyle{fancyplain}%
\bibliographystyle{plain}%
\pagenumbering{roman}%
\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%

{\bf Copyright notice:}

All editorial content and graphics in this help file may not be copied, 
or re-used in other applications (e.g derivate work based on CDex), without the 
express written permission of the author(s).

\tableofcontents%


\chapter*{CDex Software Copyright notice}%
\setheader{{\it COPYRIGHT}}{}{}{}{}{{\it COPYRIGHT}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%

Copyright (c) 1999-2006 Albert Faber.


{\bf Important Notice:}
Altough CDex software itself is released under the GPL license, some
parts of the CDex package are copyrighted (like the language files, this
help file, CDex icons and logo's and other documents). If you want to release a derivate product of 
that's based on the CDex software package, you need to have a written permission
of the copyright holders to include these copyrighted file(s).


		    GNU GENERAL PUBLIC LICENSE
		    
		       Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.


			    Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users.  This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it.  (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.)  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.

  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights.

  We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

  Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software.  If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.

  Finally, any free program is threatened constantly by software
patents.  We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary.  To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.

  The precise terms and conditions for copying, distribution and
modification follow.

		    GNU GENERAL PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License.  The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language.  (Hereinafter, translation is included without limitation in
the term "modification".)  Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.

  1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.

You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.

  2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) You must cause the modified files to carry prominent notices
    stating that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

    c) If the modified program normally reads commands interactively
    when run, you must cause it, when started running for such
    interactive use in the most ordinary way, to print or display an
    announcement including an appropriate copyright notice and a
    notice that there is no warranty (or else, saying that you provide
    a warranty) and that users may redistribute the program under
    these conditions, and telling the user how to view a copy of this
    License.  (Exception: if the Program itself is interactive but
    does not normally print such an announcement, your work based on
    the Program is not required to print an announcement.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.

In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable
    source code, which must be distributed under the terms of Sections
    1 and 2 above on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three
    years, to give any third party, for a charge no more than your
    cost of physically performing source distribution, a complete
    machine-readable copy of the corresponding source code, to be
    distributed under the terms of Sections 1 and 2 above on a medium
    customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer
    to distribute corresponding source code.  (This alternative is
    allowed only for noncommercial distribution and only if you
    received the program in object code or executable form with such
    an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for
making modifications to it.  For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable.  However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.

  4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License.  Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.

  5. You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Program or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

  6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.

  7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all.  For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

  8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded.  In such case, this License incorporates
the limitation as if written in the body of this License.

  9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

Each version is given a distinguishing version number.  If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation.  If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.

  10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission.  For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this.  Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.

			    NO WARRANTY

  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.

  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.

		     END OF TERMS AND CONDITIONS


\chapter{Introduction}
\pagenumbering{arabic}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

This document describes CDex, a utility for extracting sound files from CDs
in your CD-ROM drive, and for 
converting WAV files into several other (compressed) formats, like the
popular MP3 format.

The latest version of CDex can be downloaded from:
\begin{verbatim}
http://www.sourceforge.net/projects/cdexos
\end{verbatim}


\section{System Requirements}\index{System Requirements}

The run CDex, you need at least:
\begin{itemize}
\itemsep=0pt
\item Microsoft Windows 95/98/NT/ME/2000/XP operating system
\item Adaptec's ASPI for Win32 Manager (version 4.54 or better)
\item A CD-ROM which has Digital Audio Extracting capabilities (most IDE drives
and SCSI drives will do)
\item Intel Pentium or compatible processor
\item Lots of free disk space to record your WAV / Encoded (MP3) files
\item A player is recommended (like Winamp). Take a look at www.mp3.com where you can find much
more information about MP3.
\end{itemize}


\section{Status of CDex}\index{Status of CDex}

CDex is under continuous development, often following users'
suggestions. See the CDex Sourceforge web page \begin{verbatim}
http://sourceforge.net/projects/cdexos/
\end{verbatim} for existing bug reports and pending feature requests.



\section{Acknowledgements}\index{Acknowledgements}


Thanks are due to the many people that have worked on the LAME encoder, especially 
Mark Taylor, Robert Hegemann, and Takehiro Tominaga.

Also thanks for the many beta testers of CDex, who went through the trouble testing
the many beta versions of CDex, and took the time to write up bug reports. And of 
course all, thanks to the users that came up with new feature requests and ideas to improve CDex.

A special thanks to Dustin Halstead (aka: Mangax, mangax@midsouth.net),
who designed the CDex logo and CDex buttons.

The original CDDB was designed and developed by Ti Kan and Steve Scherf
(http://www.cddb.com).



\section{Change log}\index{Change log}

Version 1.70 beta : (May 2006)

Updated to GNU based winamp plugins

\begin{itemize}
\itemsep=0pt
\item Support conversion of WAV files > 2 Gig
\item Added initial support for MusicBrainz database access
\item Updated Lame encoder
\item Updated Ogg encoder libraries
\item Add patches CDex 1.60++ (cue sheet generation)
\item Updated several language files
\item UTF-8 support for CDDB
\item Update to lame_enc.dll version 3.97 beta 2
\item Update to vorbis version with aoTuVb4.51
\item Update links to cdexos.sourceforge.net
\item Add support to write vorbis comment tags into FLAC files
\item Initial support for MusicBrainz
\item Many bug fixes
\item Update copyright statements
\end{itemize}


Version 1.50 beta : (November 2002)

\begin{itemize}
\itemsep=0pt
\item New look (buttons & logo)
\item Support for Monkey's APE encoder (version 3.97)
\item Support for native Ogg Vorbis DLL encoder libraries (version 1.0)
\item Support for NTT VQF encoder DLLs
\item Add feature to keep the original directory structure when converting files
\item Added track offset feature
\item Added Digital CD playback option
\item Added profile feature
\item Many small bug fixes
\end{itemize}


Version 1.40: (March 2002)

\begin{itemize}
\itemsep=0pt
\item Added MPEG->MPEG transcoding option
\item Avoid long delays between file conversions when ID3V2 Tag option is enabled
\item Make sure that the CD-ROM is unlocked after ripping a CD
\item Upgraded to Vorbis RC2 (encoder)
\item Upgraded to latest LAME version
\item Support Winamp Plugins
\item Support for CDDB protocol level 5
\end{itemize}


Version 1.30: (March 2001)

\begin{itemize}
\itemsep=0pt
\item Improved MP3 player (switched to MPG123 decoding engine)
\item CDDB submit support for freedb.org
\item Recording from a soundcard
\item Improvements to the playlist file generations
\item Added support for the Vorbis Encoder / Decoder
\item Support for GoGo MP3 encoder
\item Included latest Lame Encoder
\item Support for latest FAAC DLL
\end{itemize}

Version 1.20: (December 1999)

\begin{itemize}
\itemsep=0pt
\item Automatically match up the CD drive letter with the CD-ROM device
\item CDDB ID of mutlti-media CDRoms are now calculated correctly
\item Better site query of CDDB sites
\item Fixed (hopefully) Windows codec enumeration bug
\item On the fly encoding for external encoder (if ext encoder supports this)
\item Added support for FAAC dll
\item Included latest Lame Encoder (speed and quality improvements)
\item Added additional settings for Lame Encoder
\item Setting proper logical drive in CD-ROM configuration dialog
\item Save the remote CDDB sites properly
\item Fixed bugs in normalization code (Thanks to Frank!). Decreased
normalization buffer size in order to avoid stack overflow problems
\item Save Correct TAG (Category Field) when performing Partial Track copy
\item Added Simple MP3 Player
\item Switched to Lame Encoder (version 3.58)
\item Added Joint stereo and Fake Stereo option in Internal Encoder options
Fixed problems when converting MP3->RIFF WAV (was not doing anything)
\item Made changes to Codec enumeration, hopefully this solves the weird
crashes
\item Store the CDDB query sites result correctly
\item Added WMA encoder
\item Better handling of ASPI errors
\item Fixed problems with pause button
\item Avoid system crash when no CD-ROM drive has been found
\end{itemize}

Version 1.10: (March 1999)

\begin{itemize}
\itemsep=0pt
\item Major re-code of the ripping and encoding part, in order to more easily
add new encoders and to avoid a maintenance trap. Unfortunately, this has
introduced many new bugs, therefore many service releases were necessary to
make it stable again.
\item Moved the ripping stuff into a separate DLL.
\item Added the CD selection bar in the main menu.
\item Better support for external encoders.
\item Dropped (or convert WAV files) now also supports multiple CD-ROM
configurations
(i.e. the settings of each CD-ROM are saved in the INI file).
\item Added support to get the CDDB server list.
\item More flexible file name building (including dynamic directory creation).
\item Support for Windows MP3 compression Codec.
\end{itemize}

Version 1.02: (December 1998)

\begin{itemize}
\itemsep=0pt
\item Minor improvements to version 1.02, mostly related to slow response time
of Windows NT systems.
\end{itemize}

Version 1.00: (October 1998)

\begin{itemize}
\itemsep=0pt
\item Improved user interface (removed plain buttons for Extracting toolbar)
\item Added remote CDDB support
\item Added support for external encoders (AAC/VQF/MP3 like Blade Encoder,
Plugger, L3Enc etc.)
\item Added support for Blade Encoder DLL
\item Several bug fixes
\end{itemize}

Version 0.15: (August 1998)

\begin{itemize}
\itemsep=0pt
\item First public release
\end{itemize}


\chapter{Installing CDex}\index{Installing CDex}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

How to install CDex.

{\bf Important:}

CDex needs ASPI drivers\index{ASPI drivers} to work properly; you should have
installed this on your system, because otherwise you cannot use the extracting of
CD-ROM tracks.

Installing CDex (when you downloaded the ZIP file) is straightforward and easy.
In order to install CDex, open the file Zip file with a utility like WinZip\index{WinZip}
 and extract the file to whatever directory you like (e.g. c:$\backslash$Program Files$\backslash$CDex).
Once it has extracted, close WinZip, open a Windows Explorer window and select the directory
where CDex is installed. Just double-click on the CDex.exe file to run it. That's all!
Optionally you can create a shortcut to CDex -- but if you do, make sure though that you set
"Start In" field to the directory where you have installed CDex.

Even easier is the installation from the CDexSetup.exe file. Just double click on the
CDexSetup.exe file, and the setup wizard will guide you through the installation process.


\section{How to uninstall CDex}\index{Uninstall CDex}

CDex does not install any additional DLLs or components; all the files are
located in the CDex directory, except for the CDex.ini file, which is located in
the Windows directory. Just remove the directory where CDex is installed,
and delete the CDex.ini file that is located in the
Windows directory.

If you have installed CDex via the CDexSetup.exe file, you can select the Uninstall
CDex option from the Start/Programs/CDex XXX/Uninstall CDex menu option. However, the
Uninstall won't delete the CDex.ini file, which you have to delete by hand from the
Windows directory.

\chapter{A Quick Tour}\index{Quick Tour}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

This chapter is for those who can't wait; it discusses briefly how to
configure the main options and how to use it. It is assumed that you have
already installed CDex (see previous chapter). Now the first thing you
have to do is to configure CDex, below a short description of the main
items that have to be configured.

After you have started CDex, you have to select the configuration option from
the options menu (or click on the configure on the toolbar).


\section{How to get started}

First select the configure button (F4) and select a proper output directory.
For all the available shortcuts, see also \helprefn{Short Cuts}{shortcuts}.

Secondly, select the CD-ROM tab and make sure that the CD-ROM settings are
correct. At least make sure that the logical drive letter is set up correctly
for your CD-ROM (otherwise you might have problems with reading the
CDPlayer.ini file). Optionally you can select another encoder (like changing
from LAME to Ogg Vorbis, or Fraunhofer). You can select
the encoder by clicking on the MP3 tab.


Finally, you have to fill in the CDDB settings; at least make sure that you
specify your e-mail address when you want to use the remote CDDB functionality.


Once you have set up everything, click on the OK button. The settings will be
stored to the CDex.ini file that is located in the Windows directory. Now that the
setup has been completed, it is time to rip some files:


$$\imagemap{1cm;0cm}{MainMenu.bmp}{MainMenu}$$

The figure above shows the main CDex screen. Once you've put a CD in,
the first thing I would recommend
doing is to fill out the Artist/Album information as well as the each track's
title. It seems like a bit of work, but it saves you time, because otherwise you will end
up with a bunch of files with the meaningless names, which you'll then have to rename or
just throw away.

Luckily, there is a large database on the Internet called CDDB. This database
has track and artist information of just about every CD album. The only thing you
have to do, in order to use this database, is to fill out the e-mail address
field in the \helprefn{CDDB options}{cddbsettings} (or at least something that
looks like an e-mail address like joe@sixpack.com).

Now select one (or more) tracks from the track list. You can select tracks by
 \popref{clicking}{mouseclick} on the tracks; to select more than one track,
hold down the CTRL key while \popref{clicking}{mouseclick}. To select a range
of files, you can hold down the SHIFT key while \popref{clicking}{mouseclick} on
the first and last track you want to select. You can select all files at once by hitting
the CTRL-A \helprefn{Short Cuts}{shortcut} key.  This shortcut is native to
Windows (for example, you can do that in Windows Explorer to select multiple
files), but many users are unaware of it.

Once you have selected the tracks you want, you can extract these tracks to either WAV
files or extract them directly to compressed files (like MP3 or Ogg).

If you want to extract them to WAV files, hit F8, or click on the topmost
button on the Recording Toolbar, which says "WAV" on it.
(The Recording Toolbar is along the right side the main CDex screen.)

If you want to extract them to compressed files (like MP3), hit F9, or click
on the second button on the Recording Toolbar.

To rename the track files, you have to select a track first; once the track
is selected, click on it again (with left mouse button, or press the F2 key);
now a cursor will appear; type in the track.  Hit the return key when done.
(This procedure is similar to the file renaming the Windows Explorer). Or
if you have selected a track, you can use the right mouse button to get the
pop-up menu, then select Rename and the text cursor will appear.

Most of these functions are available when you press the right mouse button
in the track list!

\subsection{Profiles}
CDex has the abillity to select and store configuration profiles. When saving a profile,
all current configuration settings are saved under the selected profile name.
Once a profile has been saved under a particular name, the entry will be added 
to the profile selection box. If you change make any changes in the configuration 
settings, the new configuration settings will always be stored under the currently
selected profile name. The active profilename will be persistent as well; 
so when you restart CDex, it will come up with the last active profile.


\chapter{Digital Audio Technology}\index{Digital Audio Technology}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

This chapter explains briefly the basic topics related to digital audio.


\section{What is CDDA or DAE:}\index{CDDA}\label{cdda}
The process of direct reading the audio data is called CD Digital Audio (CD-DA)
or sometimes referred to as "Digital Audio Extraction" (DAE)\index{DAE} or as
"CD ripping" \index{ripping}. CDex uses CD-DA to read the audio data of the
CD disc and write the resulting data into a WAV file or a MP3 file. The
advantage of CD-DA above recording the file using your sound card is that
there is no loss of music quality; the data in the WAV file is an exact
copy of the data on the disc.  (In technical terms, using your sound card,
the digital data from the CD is converted to an analog signal, which is then
digitized again by the sound card. Often the sound quality will deteriorate when
going this route, and producing noisy WAV files.)  Furthermore, DAE is also a lot
faster than ripping audio data with your sound card.


\section{The purpose of audio compression:}\index{Audio Compression}
Until audio compression was invented, high-quality digital audio data took
a lot of hard disk space to store. Let's go through a short example. Suppose you
want to sample your favorite 1-minute song and store it on your
hard disk. Because you want CD quality, you sample at 44.1 kHz, stereo,
with 16 bits per sample.


44100 Hz means that you have 44,100 values per second coming in from your
CD-ROM (or input file). Multiply that by two, because you have two channels, left and right.
Multiply by two again because you have two bytes per sample (i.e. 16 bits
per sample). The song will take up 44100 samples/s x 2 channels x 2 bytes/sample x 60
seconds/min Mbytes equals about 10 megabytes of storage space on your hard disk,
for each minute!

If you want to download that over the Internet, given an average 28.8 modem,
it would take you about 10,000,000 bytes x 8 bits/byte / (28800 bits/s) x (60
s/min) or about 45 minutes. Just to download one minute of music!

Digital audio coding (also called "digital
audio compression") is the art of minimizing storage space (or channel
bandwidth) requirements for audio data.  Modern perceptual audio coding
techniques (like \popref{MPEG}{mpeg},
\popref{Ogg Vorbis}{ogg}, AAC) consider how we actually perceive
sound, to give higher fidelity to the parts of the sound that we hear
most clearly, and to simplify the parts of the sound where we are
less likely to notice any difference.  Using compression that uses
these techniques can take uncompressed audio, and represent it in
about a twelfth the original disk space, without any noticeable loss
in fidelity.  It can compress it even further and further, if you
are willing to put up with less and less fidelity.

So such schemes are the main technology for high quality low bit-rate
applications, like soundtracks for CD-ROM games, solid-state sound memories,
Internet audio, digital audio broadcasting systems, and the like.


When you deal with compression technology, often you have to specify the
"bitrate". The "bitrate" refers to how much data is needed to represent
how much sound. If less data represents each second of sound, then the
sound quality will be lower; but if more data represents each second,
the quality will be better.

For example, an MP3 encoded "at a bitrate of 128 Kbps" (a very common
compression rate) represents each second of sound using 128,000 bits --
roughly like the quality of FM radio with good reception. The same sound
encoded "at a bitrate of 64 Kbps" will represent each second using half
as much data, so the file on the whole will be half the size of the 128
Kbps) and the audio quality will be lower. It's not quite right to say
that it's "half as good", since it's hard to really use numbers for
how good we think something sounds; but 64 Kbps could be compared to the
quality of a copied cassette tape.


\section{Which bitrate should I use to get CD-Quality:}\index{CD-Quality}\index{bitrate}
This is another of those questions that people debate {\bf endlessly}. There really is 
no single (correct) answer - it depends on your ears, your equipment, the quality
and complexity of the input sound data, etc. I think it's probably 
fair to say that 128 Kbps is a bit on the low side for music, but it may sound fine from some 
encoders for some songs under some circumstances; while 160 Kbps done by a good encoder should 
sound pretty good to most people under most circumstances.  But I know some people will 
insist on higher standards.  Which MP3 encoder you use really does make a difference - 
I personally recommend using the LAME MP3 encoder (the default in CDex),
or the Fraunhofer MP3 encoder.

Also note that simple speech is generally much less acoustically complex
than music, and that people generally care less about the audio quality
of speech, as long as it's understandable.  This means that bitrates
below 128 Kbps can be just fine for compressing speech, even though those
bitrates are usually not even worth considering for music.


\section{Bitrate Options:}\index{Bitrate Options}

There are three types of bitrate options that you can specify for each
the encoder (although some encoders may not allow any options).

1) Constant Bitrate (CBR)\index{CBR}\index{Constant Bitrate}

This is the default encoding mode, and also the most basic. In this mode, the 
bitrate will be the same throughout the whole file.  So, a second of audio from
one part of the file takes just as much disk space as a second from any other
part of that file -- regardless of whether either part is silence, acoustically
simple, or quite complex.  This means that you are likely to hear distortion more
in the complex parts than in the simple parts.  The advantage of CBR formats
is that even older players understand them, and that you can reliably predict
the file size from the duration of the sound (or vice versa).


2) Average Bitrate (ABR)\index{ABR}\index{Average Bitrate}

In this mode, you tell the encoder to aim for an average bitrate
that you specify, skimping on the simpler parts of the music, and using
higher bitrates for the parts of your music that are more complex. The
result will be of higher quality than you'd get in a CBR encoded file of
the same size. This mode is highly recommended over CBR. This encoding
mode is similar to VBR.

3) Variable bitrate (VBR)\index{VBR}\index{Variable Bitrate}

In this mode, you say what level of quality you want in the output file,
and the encoder compresses each second as best it can to get just that
level of quality -- using less information to represent simpler parts of
the song, and more information to represent the more complex parts.
However, this mode relies heavily on the encoder's model of how you
perceive quality, and could lead to a few "bad choices" in the encoding
process. If possible, you may want to specify a minimum bitrate (e.g.,
64 Kbps) to avoid those potential errors.


\section{Creating an Audio CD from MP3 files:}\index{Audio CD}\index{CD-Burning}

I've gotten many questions about how to create an audio CD from MP3 files, so
that the CD can be played in a regular
CD player - and not just in the new players that can read MP3 data CDs!

There are programs that claim to be able to take MP3 files and decode them and burn them to an audio CD
all in one operation... MP3 CD Maker is one such program. However, I still use a two-step process:

1) Decode the MP3 files to WAV files. You can use CDex for this by using the "Convert/Convert Compressed Audio File(s) to WAV file(s)"
menu option. Or you can even achieve this with Winamp using the "Nullsoft Disk Writer plugin".


2) Burn the WAV files to an audio CD using a CD-burning program like Easy CD creator, WinOnCD, 
Fireburner etc. I personally use WinOnCD (it came with my burner, and it works very well), 
but pretty much any CD burning program should be able to burn an audio CD from WAV files 
sampled at 44.1 KHz, 16 bits per sample and two channels, without a problem. Make sure that you choose 
the "Audio CD" option - you don't want to just copy the WAV files to a data CD. Also, if you want the disk to play 
and select tracks without a problem in various audio CD players, you might want to try and use 
the "Disk at once" option, which burns the whole CD without turning off the laser. CDs burned 
in "Disk at once" mode will generally be handled better by audio CD players. CDs burned in 
"Track at once" mode, where the laser is turned off between each track, will generally 
play okay, but many audio CD players can't successfully skip to any track other than the first 
on such disks, which is kind of a pain.

The bitrate is not relevant to the CD format - the bitrate is a measure of how 
severely the data was compressed, but once the file has been converted to a WAV 
file (and hence decompressed) the bitrate is gone. However, files which were 
compressed to a lower bitrate (and hence compressed more) will not sound as good 
as ones which had a higher bitrate.  I would listen carefully to a 96kbps file 
before burning it to CD and ask yourself: is the quality really good enough?

\chapter{Configure CDex}\label{configurecdex}
\index{Configure CDex}
\winhelponly{\special{#\{\footnote HID_CONFIGURE\}}}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

This chapter explains the configuration TABS that are available within CDex.

\section{General Settings}\index{General Settings}
\winhelponly{\special{#\{\footnote HIDD_GENERICPROPPAGE\}}}

$$\imagemap{1cm;0cm}{generaloptions.bmp}{generaloptions}$$

\subsection{ID3 tag version}

CDex can writes ID3 tags within the MP3 file. This tag contains information about the recorded 
track. This information can be useful if you decide to use any MP3 catalog programs. The
catalog programs will read the embedded tags and do the work for you automatically.

You can view the embedded ID3 tags of an MP3 file in Winamp. Play an MP3 file in
Winamp, right-click on the track's title in the Winamp Playlist box, and select File Info
from the menu. You'll see all of the ID3 tag information.

The ID3 Version selection box option allows you to select which ID3 tag format shall be used by CDex.
The advantage of ID3 V2 over V1.0 is that the track/artist/comment fields are not limited
to 30 characters, and additional tags have been defined. Although support for ID3 V2 is very
common now, you might want to make sure that
your player supports it - otherwise the player may not even play the MP3 files! More details and 
background information about ID3 tags can be found at www.id3.org

\subsection{ID3 tag track number (not applicable for ID3 V1 tags)}
This option allows you to specify the track number format written to the ID3V2 track field. The following options
are available:

Option

N          : Track number only

N / TN     : Track number / Total tracks

0N         : Track number with leading zero

0 N / 0 TN : Track number / Total tracks both with leading zero

\subsection{Tag comment field:}
All tag formats (like the ID3, APE, Ogg Vorbis tags) do support a comment field. The
content of the comment field can be set in the "Tag comment field" edit control.

\subsection{Encoded-by field (not applicable for ID3 V1 tags)}
Many tag formats (like the ID3-V2, APE, Ogg Vorbis tags) do support an "Encoded-by" field. Often,
the person who encoded the file will put his name or handle into the "Encoded-by" filed. If the
tag remains empty, the "Encoded-by" field will not be inserted into the file tag.

\subsection{Normalize track volume:}
Sometimes, a CD may contain tracks with different volume levels. If
you want to make the volume level the same for all the tracks on the CD, you can enable
normalization, which will make adjustments to the track volume for you.

The upper and lower boundaries, as well as the normalization values, can 
be specified in the four edit boxes. The values are in percentages. Keep in mind 
that this option only works when the On The Fly MP3 encoding option is disabled.

{\it Default settings:}

{\it Lower Normalization value: 98\%}

{\it Upper Normalization value: 98\%}

{\it Lower  value 90\% }

{\it Upper value 98\%}


How does normalization work?

First, CDex determines the maximum level (the "peak level") in the sound file.  The peak
level is determined by taking the absolute value of the raw sample values. The raw
samples values (16 bit) range between -32768 up to 32767. When ripping a file, the 
peak level is also expressed in decibels (dB).  This value is determined by the following formula:
peak level dB = 20 log (signal / 32767) if signal > 0, and set to -96 dB if the
signal is 0.


Then, depending on the settings, it will scale the data to the requested level. So for example, when you have the following settings:

To 80\% if signal < 88\%

To 98\% if signal > 95\%

If the peak level of the sound file is 50\%, then the data is scaled to 80\%, so 
all samples are multiplied by a factor 80/50 = 1.60
If the peak level of the file is 99\%, then the data is scaled to 98\%, so all samples are 
multiplied by a factor 98/99 = 0.989


\subsection{Automatic shutdown after ripping / encoding (default: off)}
When enabled, the computer will shut down after the ripping and encoding process
has been completed.

\subsection{Digital CD Playback (default: off)}
This option allows you to digitally play back a CD.  Basically it will read the CD and
send the read data to the sound card.  This way, you can play back CDs even when there
is no direct connection between the CD-ROM and the sound card.


\section{Filename Settings}\index{File Name Settings}
\winhelponly{\special{#\{\footnote HIDD_FILENAMEPROPPAGE\}}}

$$\imagemap{1cm;0cm}{FileNameOptions.bmp}{FileNameOptions}$$

\subsection{Filename builder:}\index{File name builder}

The filename option string determines how the output files will be saved to
disk. The following identifiers are available to dynamically create filenames:

\begin{itemize}
\itemsep=0pt
\item \%1 Artist information
\item \%2 Album information
\item \%3 Track number
\item \%4 Track name
\item \%5 CD Volume ID
\item \%6 CDDB ID
\item \%7 Track number with leading zero
\item \%8 Total number of tracks on the album
\item \%G ID3 Genre tag
\item \%Y ID3 Year tag
\item \%A Artist name, not affected by the Track/Artist split setting
\item l, u and c prequalifier, which will format the strings to lower case, upper case and 
upper case of first character of every word
\end{itemize}

Also the backslash ($\backslash$) might be used to indicate what part will be
used as a directory name. Beware that you shouldn't have a backslash at
the beginning or end of the filename option field. Nor should you specify the
extension of the file.

{\it Examples:}

\%1$\backslash$\%2$\backslash$\%4 creates the files, named after the track name,
in the directory: artist$\backslash$album

\%1-\%2-\%3 creates the track files named like artist-album-trackname.

\%1$\backslash$\%2$\backslash$\%7_\%4 will create track files in
an artist$\backslash$album directory, named like tracknumber_trackname,
like "Beck$\backslash$Odelay$\backslash$08_where it's at.mp3"

\%u1$\backslash$\%l2$\backslash$\%7_\%c4 will create track files in
an upper case artist$\backslash$lower case album directory, named like tracknumber_trackname (each
first character of every word of the track name will converted to an upper case character, like "BECK$\backslash$odelay$\backslash$08_Where It's At.mp3"

{\bf Notes on compilation discs:}

You can use the %A qualifier in case you have to deal with a compilation disc, i.e. each track contains
also the artist name. Remember to enable the 'Split artisit in track name' in the Filename configuration TAB.

For example you can use:


\%A - \%2$\backslash$\%7 - \%4


this creates the following output directories / filename


Various - Chirstmas Hits$\backslash$01 - trackname01.mp3


Various - Rock Hits of the 90s$\backslash$01 - trackname01.mp3


and so on...


If you don't want artist folder, simply use:


\%2$\backslash$\%7 - \%4


that should create names like: 


Chirstmas Hits$\backslash$01 - trackname01.mp3


Rock Hits of the 90s$\backslash$01 - trackname01.mp3



\subsection{WAV->MP3 Output Directory:}

This indicates where the converted MP3 files should be stored. The output
directory can be changed by pressing on the ".." button. Once selected, a
directory selection window appears; select the appropriate output directory and
press the OK button.


\subsection{Recorded Tracks Output Directory:}

This indicates where the extracted \popref{MPEG}{mpeg} (or
\popref{WAV}{wav} files) are stored after ripping.
The output directory can be changed by pressing on the ".." button. Once
selected, a directory selection window appears, select the appropriate output
directory and press the OK button.

\subsection{Character Replacement button:}

When this button is pressed, a window pops up in which you can select the character
replacements you want to use for illegal filename characters.

For example, suppose you had a track called this:

Beethoven - Symphony No. 3 in E flat major, op. 55 "Eroica": Allegro

Then that couldn't just be turned into this filename:

Beethoven - Symphony No. 3 in E flat major, op. 55 {\bf "}Eroica{\bf ":} Allegro.mp3

because a filename can't contain double-quotes or colons.  So in the
Character Replacement window, you can decide what character should replace
those.  Currently the defaults are to replace them with an underscore,
so that the file will be named:

Beethoven - Symphony No. 3 in E flat major, op. 55 {\bf _}Eroica{\bf __} Allegro.mp3

But if you changed double-quote to turn into a single-quote, and colon
to turn into a dash, then the file will be named:

Beethoven - Symphony No. 3 in E flat major, op. 55 {\bf '}Eroica{\bf '-} Allegro.mp3

Currently, replacement can change a character to at most {\bf one} character - so
you can't (for example) replace colon with {\bf two} dashes.

But you can set the replacement to be empty. In this 
situation, the illegal character is just removed from the filename.

Besides replacing the illegal filename characters, you can also optionally
replace the space character.

{\bf NOTE:}
If you want to replace the space character with something (like the underscore character,
or a dash), make sure that you delete the
existing replacement character (by default, just the space character itself) in the "space replacement character"
edit field -- since you can replace the space with only a single character!

So if you set space to turn into an underscore, then the above-mentioned track
name will be saved as:

Beethoven_-_Symphony_No._3_in_E_flat_major,_op._55__Eroica___Allegro.mp3

As an extreme case, if you set the space and all the illegal characters to empty
replacement strings, that file would be named like this:

Beethoven-SymphonyNo.3inEflatmajor,op.55EroicaAllegro.mp3

You see that the quotes, the spaces, and the colon have just been left out
of the filename, instead of being substituted to anything.


\subsection{Split Track name to Artist/Track using X character:}

When this option is active, the Artist name is extract from the track name. All the
characters before the "using X" character is used as the Artist name, everything after
the splitting character is used as the track name. This option might be handy if you
have a collection CD (samples) which contains various artists.

Example: if the split character is set to / and the track name is:
Dire Straits/Love over Gold
The artist name is set to "Dire Straits", and the track name is set to "Love over Gold"

\subsection{Playlist filename builder.}

For the playlist filename builder, the same parsing routines are used as for the regular
filename builder (see this section for more details).


\subsection{Add Files to M3U Play-list.}

When enabled, it will add the recorded files to the file Playlist.m3U. 
The location and the filename of the M3U playlist depends on the Playlist filename builder string.


\subsection{Add Files to PLS Play-list.}

When enabled, it will add the recorded files to the file Playlist.pls.
The location and the filename of the M3U playlist depends on the Playlist filename builder string.



\section{CD-ROM Settings}\index{CD-ROM Settings}
\winhelponly{\special{#\{\footnote HIDD_CDPROPPAGE\}}}

$$\imagemap{1cm;0cm}{CDROMOptions.bmp}{CDRomOptions}$$


\subsection{CD-ROM drop down list:}\index{CD-ROM type setting}

This selection box shows the available CD-ROMs, select the CD-ROM from which
you want to extract the CD-ROM tracks.


\subsection{Read Sector (default value 26)}\index{Read sectors setting}

Some drive can't read more than 26 sectors at once, so if you get silent
WAV files, make sure that this value is less than 27. If your drive can
read more than 27 sectors at once, you can try to increase the value
to say about 400; this can speed up the ripping process considerably!


\subsection{Read Overlap (default value 7):}\index{Read overlap setting}

The problem with reading the audio CD format is that you can't very well
position the starting track. This might cause a mis-alignment when reading
two separate blocks of data - so gaps can occur, where some sound
data is getting lost, or there might be overlap between first and second block
of data.

To solve this problem, CDex uses "jitter correction",
which means CDex doesn't position the laser to the end of the first block,
but a few sectors earlier. This number of overlapping sectors can be set
in the Read Overlap field; this number should be large enough so there will
be enough overlap to compensate for mis-positioning of the laser. If you hear
strange noises in your MP3 or WAV file, try to increase the read overlap number.
Be aware that the read overlap value should always be less than the Read Sector value.


\subsection{Block Compare (default value 1):}\index{Block compare setting}

Now that we have read some additional sectors, it is time to actually do the
jitter correction. Thus, the last sectors of the first data block are
compared with the sectors of the second data block. The question is
how many sectors do we have to compare to be sure that the blocks truly
aligned? Well, I am using 1, but if you think this is not enough, please feel
free to increase this number (which of course will slow down the recording
process and might increase the number of jitter errors). Make sure though that
the Block Compare  value does not exceed 0.5 x Read Overlap value.


\subsection{Number of Retries (default value 0):}\index{Number of Retries}

This number specifies the number of retries that will be attempted if un-recoverable
jitter errors occur during the ripping process. When retries are attempted, the 
CD-Read speed is reduced to 1x. Increasing the number of retries might slow down 
the ripping process considerably (it is probably better to increase the number 
of Read Sector and Read Overlap Sectors to avoid jitter errors)
 

\subsection{CD Speed (default value 0):}\index{CD speed setting}

Indicates the relative reading speed of the CD-ROM. The default value is 0,
which means that is uses the default recording speed.  You might want to try
to increase this value (e.g. 60 ) in order to speed up the ripping process
(mostly noticeable when ripping WAV files).


\subsection{CD-Read Type (default value Generic):}

This option allows you to select the CD-ROM brand you have, based in this
information CD audio data is read differently. By default it is set to Generic,
which should work for most drives. However, if you don't get any audio data
into the WAV or MP3 file, you might want to change this setting to your
specific brand of CD-ROM.

\subsection{Auto Detect Button:}\index{Auto Detect Button}\label{autodetect}

Pressing the auto-detect performs a that pops up a new window. You
MUST have an audio CD in your CD-ROM drive. The auto detection might take some
time (a couple of minutes). If you are lucky, the auto detection will find at least
one combination that reports success. Select this line from the list box and
press the OK button. If it does not work, send me the file CDexAutoDetect.txt
that is created in the root directory of your drive.

Note: Some people have reported that CDex or the system would crash when doing the
auto detection procedure, they got around this problem by turning off the DMA setting in the
Control Panel-> System -> Device Manager ->CD-ROM -> Your brand of CD-ROM (press
properties button and select the Settings TAB). If CDex is still not able to read audio
data from your CD-ROM, please send me an e-mail, include the CDexAutoDetect.txt
and add also the info you get from the System Info button (see also contact
for more details what information is useful for me).


\subsection{Swap Left Right Channel (default value off):}\index{Swap channels}

With certain types of  CD-ROMs, the left and right channels are reversed. With
this option enabled, you can correct for it.


\subsection{Enable Jitter correction (default value on):}\index{Jitter correction}

This setting controls if the jitter error correction function is enabled.
Unless you have a very good CD-ROM drive (like a Plextor drive), I would advice you 
to turn on the jitter correction, to avoid click/plops and other artifacts in the 
extracted WAV of MP3 file. However, if you have a good CD-ROM drive (e.g. Plextor drives),
you can turn off the jitter correction. Doing so can improve the ripping speed considerably!


\subsection{Start and end Offset (default values 0):}\index{ Start offset}
\index{End offset}\index{Ripping offset}

With the start and end offset you can tweak the actual start and end position.
The values can be positive as well as negative. One unit corresponds to a
sector, which is 1/75th of a second.

\subsection{Spin up time (default value 0):}\index{Spin-up time}

Some drives give small artifacts in the first couple of seconds of the WAV
file; this is likely because the CD-ROM has not yet spun up completely. In order	
to avoid these artifacts, you can increase the spin-up time value
(value is in seconds).

\subsection{Eject CD when ripping has been completed}
When this checkbox is set, the CD will be ejected when the ripping has been 
finished properly.

\subsection{Select All CD Tracks (by default)}
When this checkbox is set, all the CD tracks will be selected when a new CD-ROM
is inserted (and during startup).

\subsection{Use Native NT library (default value off):}\index{Native NT library}
When enabled, CDex will use the Native Windows NT SCSI library, instead of the 
ASPI library. As the name indicates, this option is only useful for Windows NT and Windows 2000.
If you enable this option, you have to restart CDex, before this change can take effect.

\subsection{Ripping Method (default value: Standard):}\index{Ripping Method}
This option allows you to change the ripping method that is used to read
the data from the CD-ROM. Additional information about the cdparanoia library
can be found at the following location: http://www.xiph.org/paranoia

The following Ripping Method settings are available:

\begin{itemize}
\itemsep=0pt
\item Standard: the standard CDex jitter correction algorithm. When the jitter correction
is enabled, extra data (overlap) is read from the CD (between two adjacent reads). This
overlap area is used detect the jitter errors by simply comparing the overlap area with the
data gathered during the previous read.
\item Paranoia Overlap Only: Basically the same as the Standard Ripping Method, except that it
uses the cdparanoia library.
\item Paranoia No Verify: Uses the full cdparanoia ripping method, except that the verification option
is disabled.
\item Paranoia No Scratch Repair: Neither look for scratches nor perform scratch-tolerant 
synchronization during verification. 
\item Paranoia Full: All the available cdparanoia options are enabled. 
\end{itemize}
 

\section{Encoder Options}\index{Encoder settings}
\winhelponly{\special{#\{\footnote HIDD_ENCODERPROPPAGE\}}}

$$\imagemap{1cm;0cm}{EncoderOptions.bmp}{EncoderOptions}$$

This section describes the options that can be filled out in the MP3 Encoder
options window.


\subsection{Bitrate values and how to interpret	them:}\index{Bitrates}

Almost all the encoders work with a bit-rate parameter; with this variable you can
set the amount of "compression" of the audio files.

The bitrate is a measure of the number of bits (or kilobits, etc) that it takes represent one second of sound.
A higher bit-rate results in better
sound quality, since the encoder retains more or the original sound wave information.
The downside of a higher bitrate is the increase in the file size. You can calculate
the output file size based on the bit rate as follows:

OutputFileSize [kilobytes] = Bitrate [Kbits/s] * Song Duration [sec] / 8 [bits-per-byte].

Thus a song with a play time of 3 minutes and 16 seconds, compressed at 128 Kb/s will yield:

FileSize = 128 * (3*60 + 16) / 8 = 3136 kilobytes

If this song were recorded as a plain WAV file (at the usual settings
of 44.1 thousand samples per second, stereo, 16 bits per channel),
the file size would equal 44.1 * 2 [two channels] * 2 [two bytes per sample]
* (3*60+16) [seconds] = 34,574.4 kilobytes.

So the compression ratio \index{compression ratio} in this example is
34,574.4 / 3136 = about eleven.

(The figures above are approximate, and don't take into account a few bytes here
and there for headers, ID3 tags, etc.)

A handy rule of thumb with 128Kbps compression is that it's
about "a meg a minute".  (128*60/8 = 960KB, about 1MB)


\subsection{Thread Priority:}\index{Thread Priority}

This setting allows you to change the thread priority of the encoder.
Turning up the thread settings can reduce the encoding time, at the expense
of Windows becoming less responsive.


\subsection{Output to Riff-WAV file:}\label{riffwavlabel}
\index{Riff-WAV setting}

The output file is written as a \popref{RIFF}{riff}-WAV file. This means that there is stored
an additional header (a so-called RIFF-WAV header) at the beginning of the
encoded file.  Furthermore, the extension becomes .WAV.  If you have
installed a Windows \popref{Codec}{codec} to decompress MP3 Files, this option might be
useful. Since Windows takes care of the decompression, even applications that
are not aware of the MP3 format can handle this file format via the Windows Codec.


\subsection{Encoder:}\index{Encoder type}

The encoder type specifies which encoder is used. Depending on the selected
encoder, you can fill out the proper options:


\subsection{Settings for Lame MP3/Blade DLL/Internal MP3 encoder:}
\label{lamesettings}
\index{Lame MP3 encoder}\index{MP2 encoder}\index{Blade DLL encoder}

This paragraph describes the options for the encoder mentioned above. However,
not all options might be available for certain encoders.

{\it Bitrate (default value 128 Kbits/s):}

Determines the number of bits per second.


{\it Mode (default value Stereo):}\index{Mode}

With the LAME encoder, you can specify how the file is encoded. The default
stereo option is recommended, but at lower bit-rates, the Joint-stereo or
Forced stereo can yield better sound quality.

\begin{itemize}
\item {\it Stereo:}\index{stereo} In this mode, the encoder makes no use of
potential similarity between the two input channels. It can,
however, negotiate the bit demand between both channels, i.e. give one channel
more bits if the other contains silence.
\item {\it Joint stereo:}\index{Joint stereo} In this mode, the encoder will
make use of a correlation between both channels. The signal will be matrixed
into a sum ("mid") and difference ("side") signal. For quasi-mono signals,
this will give a significant gain in encoding quality. This mode does not
destroy phase information like IS stereo that may be used by other encoders.
This setting can be used to encode DOLBY ProLogic surround signals.
\item {\it force joint stereo:} \index{Forced Stereo} This mode will force
MS joint stereo on all frames. It's faster and it uses some special mid and side
masking threshold.
\item {\it Mono:}\index{Mono} This option will forcibly generate a mono file; if the input file is
a stereo file, the input stream will be read as a mono by averaging the left
and right channels.
\end{itemize}

{\it Quality (default value Normal):}\index{Quality}

With the LAME encoder, you can specify the output quality; thus you can trade
off encoding time against sound quality. The default (normal) is recommended for
the lower bitrates (<160 kbps), high quality for bitrates >160 kbps. The voice 
quality is more or less optimized to generate the best quality for voice.
Details of the R3Mix quality option can be found at http://www.r3mix.net.


{\it MPEG-I/II setting (default value MPEG-I):}\index{MPEG-I/II}

The difference between MPEG-I and MPEG-II are the sample frequencies of the input file. MPEG-I can
handle input streams (WAV files) with a sample frequency of 48000, 44100 and 32000 Hz. MPEG-II on the
other hand will support stream for 24000, 22050 160000 Hz. Basically, use MPEG-II when you want to
encode with low bit rates (e.g. for voice files, or if you need small MP3 files with reduced quality).
As you can see, the lowest bit-rate for MPEG-II is 8 Kbits/sec while for MPEG-I the lowest bit rate is
32 Kbits/s.


{\it VBR Method Setting}\index{VBR Method Setting}

The VBR method setting allows you the change the VBR algorithm which is used
for the encoding (detailed information can be found in the LAME user documentation
- see http://www.sulaco.org/mp3/doc/html/index.html). The following selections
are available

\begin{itemize}
\itemsep=0pt
\item Disabled: Don't use VBR; instead encodie with a Constant Bit Rate (CBR)
\item VBR-Default: Use the default VBR method (currently set to VBR-MTRH)
\item VBR-Old: LAME's first functional approach, based on masking, 
bisection in the bit domain.
\item VBR-New: LAME's second approach, based on masking and direct noise 
allocation.
\item VBR-MTRH: a combination of old and new (VBR) routines
\item VBR-ABR: The Average Bit Rate (ABR\index{ABR}) setting, the encoding principle is similar to 
what AAC uses as VBR encoding, it is based on perceptual entropy, but more like CBR than VBR. 
When you select the ABR option in the VBR Settings box, the ABR edit box will be enabled. 
In this edit box you can specify the target average bit rate. Of course, a larger bit rate will yield
generally better-sounding (but larger) MP3 files.
\end{itemize}


{\it ABR Settings}\index{ABR Settings}


{\it VBR Quality Setting}\index{VBR Quality Setting}

This option allows you to set the Variable bit-rate option.
Variable bit-rate encoding will enable dynamically determined bit-rates that
depend on the music content of the current frame. This improves the overall quality
of the encoded file without increasing the file size. This option sets the
criteria used to determine when to increase the bit-rate for a frame. The lower
the number, the lower the criteria will be. Thus VBR_0 will yield the best quality
(but the largest file size) while VBR_9 will have less sound quality but the file size
will be the smallest. The recommended variable bit-rate option is VBR_4. If you don't
want VBR encoding, set this option to None.



{\it Private}\index{Private Settings}

When enabled, it will set the private flag in the MP3 stream.

{\it Original}\index{Original Settings}

When enabled, it will set the original flag in the MP3 stream.

{\it Copyright}\index{Copyright Settings}

When enabled, it will set the copyright flag in the MP3 stream.

{\it Checksum}\index{Checksum Settings}

When enabled, it will add a cyclic redundancy check (CRC) code in each frame, allowing 
[the decoding software] to detect transmission errors that could occur on the MP3 stream.
However, it takes 16 bits per frame that would otherwise be used for encoding, and therefore
will slightly (probably imperceptibly) reduce the sound quality.

\subsection{On-the-fly MP3 encoding (default value: on):}\label{otfencoding}
\index{On-the-fly encoding}

% the default value is really "on"?!

When enabled, tracks are recorded directly into the desired compressed format
(e.g. MP2/MP3) without having to store the entire file first to a WAV file.
However, with some configuration people have heard strange clicks in the
output file. Therefore, if this option is on, the file is first record as a WAV file, which can be
converted to the desired output format. The WAV file is automatically deleted
when the conversion has been completed. 

{\it DISABLE THIS OPTION IF YOU EXPERIENCE STRANGE CLICKS IN YOUR MP3 FILES.}


\subsection{External Encoder:}\index{External Encoder}
\index{Astrid Quartex Encoder}

The external encoder option allows you to use one of the command-line-based encoders, such as l3Enc.exe,
plugger+.exe, BladeEncoder.exe etc. 

{\it Browse button:}\index{Brows button}

If you have such an encoder, you first have to specify the path where the encoder is located. To
specify the encoder path, select the Browse button; a file selection window will appear. Go to the
directory where the external encoder is located, and select the executable or batch file that will
call the external encoder, and of course select the OK button. Once completed, the full filename path
is displayed in the Encoder Path box.


{\it Parameter String (default: \%1 \%2 -br \%3}\index{Parameter string}

The parameter string determines the options that are passed into the external encoder.
CDex has a few pre-defined placeholders, which will be substituted with the correct parameter value
right before the encoder is executed. The following placeholders are available:

\begin{itemize}
\itemsep=0pt
\item \%1 = input filename
\item \%2 = output filename
\item \%3 = bit rate in bits/sec
\item \%4 = bit rate in Kbits/sec
\item \%a = Artist name
\item \%b = Album name
\item \%t = Track name
\item \%g = Genre string
\item \%y = Year
\item \%tn = Track Number (with leading zero)
\item \%tt = Total number of tracks (with leading zero)
\end{itemize}

So for example, the parameter string could be like:

\%1 \%2 -br \%3"

This will expand (for example) to:

inputfile.wav outputfile.mp3 -br 1280000


{\it On The Fly encoding):}\index{On the fly encoding}

As of CDex beta 9, there is an option to use on-the-fly encoding (thanks to Egor Duda). If the "On The Fly"
option is enabled, CDex does not generate a file, but outputs the stream data (raw audio data, 16 bit 44100 Hz 
2 channels, without a WAV header) to a pipe. 
In order to use this option, your external encoder should have an option to accept data coming from 
the standard input stream. So, for example, to use LAME as an external encoder, you should use the following 
parameter string:

-v -V4 -ms -b\%4 -x - \%2

This "-" before the \%2 specifies that standard input stream will be used.

{\it Send WAV header to stdin):}\index{Send WAV header to stdin}
When this option as well as the on-the-fly encoding is enabled (i.e., so that the encoder 
will get its data through the stdin pipe), CDex will send a RIFF-WAV header before it 
sends the raw WAV data stream to the encoder, so that the encoder can figure out the 
properties of the RAW data stream. If this option is disabled, CDex will only 
send the RAW data stream.

\subsection{AAC Astrid/Quartex encoder:}\index{AAC Encoder}
\index{Astrid Quartex Encoder}

To set up the encoder, press the browse button; then navigate to the
proper directory where you have installed the AAC encoder (filename:
AacEnc.exe). For the AAC encoder, only the bit-rate selection can be changed (see
Internal MP3 encoder options for more details). Keep in mind that only a
few bitrates are supported; see AAC encoder documentation for more details.


\subsection{Yamaha VQF encoder options;}\index{VQF encoder}

In order to use the VQF encoder, select the browse button in the MP3 settings
dialog, a file selection dialog box should appear, Locate the file
SVQbatch.exe (default installed in the $\backslash$program files$\backslash$
yamaha$\backslash$SoundVQenc directory). Click on the OK button and select
the VQF radio button, and you are all set. In addition, you can specify the
output format from the VQF mode drop-down list.


\subsection{Windows Codec options:}\index{Windows Codec}

For the Windows \popref{Codec}{codec}, there are two drop-down lists. The first one specifies
which encoder to use. The second one specifies what mode should be used for
encoding.

In addition, you can set the On-The-Fly encoding option,
see \helprefn{On-the-fly encoding for more details}{otfencoding} encoding
for more details.


\subsection{Microsoft WMA encoder options:}\index{WMA encoder}

Microsoft's WMA encoder is also supported within CDex. However, you should have
installed the proper WMaudio SDK package. You can specify the bit-rate and the
On-the-Fly encoding options (see
\helprefn{On-the-fly encoding section for more details}{otfencoding}).
You can also enable the Digital Right Management (DRM), which will
add copy protection to the encoded file. (You ought to set this option when you
encode files with more than 128 bits per second)


\subsection{Psytel AAC encoder:}\index{Psytel Encoder}

To set up the encoder, press the Browse button, then navigate to the
proper directory where you have installed the AAC encoder (filename:
mp4.exe). For the AAC encoder, only the bit-rate selection can be changed (see
Internal MP3 encoder options for more details). Keep in mind that only a
few bitrates are supported; see AAC encoder documentation for more details.


\subsection{External Xing Encoder:}\index{External Xing Encoder}

To set up the encoder, press the Browse button, then navigate to the proper directory where you
have installed the Xing Encoder encoder. For the available options, please consult the Xing documentation.


\subsection{External MusePack (MPC) Encoder:}\index{External Musepack Encoder}

To set up the encoder, press the browse button, then navigate to the proper directory where you
have installed the Musepack encoder. For the available options, please consult the MusePack documentation.

The default encoding string is set to "--verbose \%1 \%2" and can be used with the latest MusePack encoder.
If you use an older version, you probably have to the use "\%1 \%2 -v" encoder string.


\subsection{WAV output Encoder}\index{WAV output Encoder}

The WAV encoder allows you to generate WAV files with any kind of settings;
but note that you have to use it with the "CD->MPEG" option rather than the
"CD->WAV" option (Since "CD->WAV" will generate only WAVs with the standard
settings of 44100 Hz, 16 bit, stereo).

With this encoder, you have the following options:

{\it Output Format (default WAV):}\index{Output Format}

For the output format, you select the WAV format.


{\it Compression (default PCM(none)}\index{Compression}

Depending on the output format, there are a few compression options available. From the drop-down
list, you can select the one of the available compression formats.

{\it Samples/sec (default 44100}\index{Samples/sec}

The samples-per-second setting allows you to select the number of samples per second. For high quality, use 44100 (CD quality); for medium quality, select 22050 samples per second; and for low quality (e.g. voice), you can
use a sample rate of 11025 samples per second.


{\it Channels (default stereo}\index{Channels}

This option specifies the number of output channels.


\subsection{FAAC DLL Encoder}\index{FAAC DLL Encoder}

CDex has support for the FAAC encoder DLL. The DLL can be downloaded from Menno Bakker's home page
\begin{verbatim}
http://www.slimline.net/aac/
\end{verbatim}.
Copy the DLL into the CDex Directory; then start CDex, and the
encoder DLL should be recognized by CDex. See FAAC documentation for more details about the settings.

\subsection{Vorbis DLL Encoder}\index{Vorbis DLL Encoder}

CDex has support for the Ogg Vorbis encoder. The DLL is included with the CDex distribution. The following 
items can be specified:

\begin{itemize}
\itemsep=0pt
\item Quality (-1.00 .. 10). The quality setting is propertional with the 
output quality (and therefore also the filesize).  A setting of -1 
is the lowest quality (low bitrate voice encoding) and most compact file;
while 10 is the best audio quality, but also results in the largest audio file. The quality
setting is the recommended settings, however, you can also choose to encode the file at a 
specific bitrate by filling out the Minimum/Nominal and Maximum bitrate fields (usefull if 
you want to stream the file for example)

\item Minimum bit rate
\item Nominal bit rate
\item Maximum bit rate
\end{itemize}


\section{Local CDDB Options}\label{localcddbsettings}
\index{CDDB settings}
\winhelponly{\special{#\{\footnote HIDD_LOCALCDDBPROPPAGE\}}}


$$\imagemap{1cm;0cm}{LocalCDDBOptions.bmp}{LocalCDDBOptions}$$


\subsection{Local CDDB path:}\index{Local CDDB path}

CDex will store the data gathered from the remote server into a local CDDB
database. You have to provide the location where you want to store the files,
or if you point it to an existing local CDDB.


\subsection{CDDB type:}\index{CDDB type}

The local CDDB files can be stored either in Windows-format CDDB files or in UNIX-format
CDDB files. The advantage of the UNIX CDDB format \index{Unix CDDB} is that for each entry
a unique file is created, allowing much faster lookup of CDDB entries.
However, due to the nature of a FAT16 partition, each (typically tiny) file can take a
considerable amount of disk space. This can be avoided by using the Windows
type of CDDB {Windows CDDB type}, which can store several entries in each file.


\subsection{Store in CDPlayer.ini file:}\index{Store to CDPlayer.ini}

You can store the results gathered from the remote CDDB (which you have
manually entered) in the CDPlayer.ini file as well. This allows the track
information to show up in the Windows CD Player as well.


\subsection{Store in local CDDB:}\index{Store to local CDDB}

When this option is enabled, CDex will copy the track/album information gathered from the
remote CDDB (or if you entered them manually) into the local CDDB database.
It is recommended that you have this option enabled, since the local CDDB can hold
much more information than the CDPlayer.ini file can.



\section{CDDB Options}\label{cddbsettings}
\index{CDDB settings}
\winhelponly{\special{#\{\footnote HIDD_CDDBSETTINGS\}}}

$$\imagemap{1cm;0cm}{CDDBOptions.bmp}{CDDBOptions}$$


\subsection{What is the CDDB anyway?:}\label{whatiscddb}
\index{CDDB}

CDDB (CD database) is an information database containing artist, disc
title, track titles and other information for digital audio compact
discs.  It was created originally to support xmcd, a CD-audio player
software package for many computer platforms (primarily UNIX) running
the X11 window system.

Early versions of xmcd allowed users to enter the CD information and
save it on the computer's local disk.  The next time a put the
same CD in the drive, the saved information was automatically retrieved
and displayed.  Later, a "Send" feature in xmcd allowed
users to submit CD information entries to the central archive via
Internet electronic mail.  Over time, this archive grew to contain
a large and rapidly growing collection of CD information.

The CDDB data archive used to be available in full via FTP on the
Internet, so that users could download this archive onto their computers
and use it with xmcd.  However, the database grew large enough that it
couldn't be easily distributed that way.

To address this issue, xmcd began supporting the concept of CDDB servers,
so that users no longer needed to download the entire CDDB to make full
use of it, but instead could just ask a server for the entry for any given CD.
So a number of CDDB server hosts have been set up on
the Internet around the world. Running xmcd (or any other newer player
that supports CDDB) on a Internet-connected computer, allows you to
querying CDDB servers to get the data for a given CD.

However, the original CDDB (www.cddb.com) may not be freely accessible anymore,
since it has gone commercial (owned by Gracenote). Luckily, there is a good free alternative
named freedb (www.freedb.org), which is a free and stays free. Therefore I would
recommend to submit an entry when it is not available in the freedb database, so 
other your hard typing effort can be shared with other users.


\subsection{Remote server:}\index{CDDB Remote server}

Select one of the remote servers; probably the fastest response time will be
obtained when you select a server that is physically located the closest
to you.

\subsection{The Query Sites button:}\index{CDDB Query Sites}

The number and location of CDDB servers changes once so often. To obtain a new list of the active
CDDB servers, click on the Query sites button. CDex will access the CDDB main server to obtain the
latest list with active CDDB servers.


\subsection{E-mail address:}\index{CDDB e-mail address}

In order to access the CDDB remote database, CDex has to provide an e-mail
address. Therefore you have to enter an e-mail address (or at least something that
looks like an e-mail address, i.e., it should at least contain a @ character).

You should really use your actual e-mail address, especially when
you are trying to submit a new/modified entry. In case something goes wrong, you'll
get emailed a detailed report of what went wrong during the submission.


\subsection{Time Out value: (default 20)}\index{CDDB time out}

This value (specified in seconds) will determine how long CDex is willing
to wait for a remote server to answer, before it gives up and aborts the
connection.
If you experience a lot of time-outs (due to slow responses of
the CDDB server), you can increase this value.


\subsection{Firewall settings: (default disabled)}\index{Firewall settings}

If you are behind a firewall, you have to fill out the following fields in
order to be able to access the remote CD database:

{\it Use Proxy:}\index{CDDB use proxy} Enable this setting if you are behind
a firewall, otherwise disable it (default).

{\it Proxy port:}\index{CDDB proxy port} This setting indicates which port
the firewall will use to access HTML file on the Internet. The value depends
on the firewall configuration (values that often used are 80,81 or 8080).

{\it Authentication:}\index{CDDB authentication} Under certain configurations,
you have to use authentication to access files through a firewall.
If this is the case, you have to enable the authentication, and you
have to fill out the field next to the Authentication field (with your
user ID) and have to fill out the Password\index{Password} field.


\subsection{Auto-connect to remote CDDB: (default disabled)}\index{CDBD Auto-connect}

When auto-connect is enabled, CDex will access the remote CDDB automatically
when the CD information is not located in the local CDDB or the CDPlayer.ini
file.

\subsection{Submit Options:}\index{CDDB Submission Options}

When you press this button, a window with the CDDB submit options will appear. You can
adjust how to submit a new item (via e-mail or using the HTTP protocol), and specify
the e-mail address / submit web address respectively. Keep in mind that submitting via
HTTP does not work for www.cddb.com (Gracenote CDDB), since CDex's submit option has not been validated by
Gracenote, the owner of this particular CDDB database. However, you can use it with
freedb, which is the really free (as in free speech, and as in free beer) CDDB database.

What are the CDDB naming rules for submitting CD's to the freedb?

\begin{itemize}
\itemsep=0pt
\item Never submit info completely in capitals or completely lowercase, unless there is a special reason for it.
\item For bands that have a leading "the", simply leave out the "the" (e.g. use "Rolling Stones" instead of "The Rolling Stones") (Obviously, this rule does not apply to "The The"!)
\item Names of people should be written "Firstname Lastname" - NOT "Lastname, Firstname".  (So, use "Annie Lennox", not "Lennox, Annie".)
\item If the album has no title, use the artist's name again in the "title" field.  This is often the case with an artist's first major label release, such as with the B-52's, whose first major album was untitled, as so is called "The B-52's")
\item When submitting an "enhanced CD" (i.e., a combined audio/data CD), name the data-track "Data" or something like that - do not leave the track-title blank.
\item When submitting a compilation (as many soundtracks are) or a sampler, you should include the track-artist in the track-name, using the syntax "artist / track-title" and set the CD-artist to "Various".
\end{itemize}



\subsection{Manually Edit Server properties:}\index{Manually Edit Server properties}
If you want to add a new remote CDDB server, you have to click on the Add Site button first.
Afterwards, the properties of the server can be altered, the following fields can be modified:

Location: This field indicates the location of the remote CDDB server (informative)
Address: This field lets you modify the address of manually added CDDB server(s)
Path: This field indicates HTTP path (normally set to /~cddb/cddb.cgi) where the CDDB cgi script is located
Port: This field indicates port number of the remote CDDB server (80 for HTTP, 888 for CDDB IP protocol)
Protocol: This field specifies the remote CDDB server is using (HTTP or CDDB IP protocol)

\subsection{Reset Button:}\index{Reset Button}
If you click on the "Reset" button, all server settings are removed, and the default CDDB server settings are
restored.

\chapter{Menu Options}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

This chapter explains all the menu options that are available.

\section{File Menu Options}\index{File Menu}


\subsection{System Info:}\index{System Info}

\helprefn{See troubleshooting section for more details.}{systeminfo}

\subsection{Compare two files:}\index{Compare two files}
\winhelponly{\special{#\{\footnote HID_COMPAREFILES\}}}

This option allows you to compare two WAV files. This tool differs from a
regular file comparison utility (like diff.exe or fc.exe) in that it ignores
the WAV header. So this option can determine the time shift between two files, and
sees whether the actual WAV data is the same.


\subsection{Exit:}\index{Exit}
\winhelponly{\special{#\{\footnote HID_APP_EXIT\}}}

Selecting "Exit" will close the CDex application.


\section{Edit Menu Options}\index{Edit Menu}


\subsection{Select All:}\index{Select All}
\winhelponly{\special{#\{\footnote HID_EDIT_SELECTALL\}}}

This options selects all the tracks in the track list window.

\subsection{Copy to clipboard:}\index{Copy to clipboard}
\winhelponly{\special{#\{\footnote HID_EDIT_COPYTRACKSTOCLIPBOARD\}}}

This option copies the track information to the clipboard, so you can paste
it into another application. The format is as follows:

'Artist Name' <new line>
'Album Name' <new line>
<new line>
'Track Number (with leading Zero)' 'track name' 'start time' 'duration' <new line>

There is a tab character between each field in each track line.



\subsection{Rename Track:}\index{Rename Track}
\winhelponly{\special{#\{\footnote HID_EDIT_RENAMETRACK\}}}

This option allows you to rename the currently selected track. Once you're done editing a track name,
you can hit the Return key to edit the next track entry. You can finish editing by pressing the 
Esc key.


\subsection{Refresh track list:}\index{Refresh track list}
\winhelponly{\special{#\{\footnote HID_EDIT_REFRESH\}}}

This option will re-read the information from the CD-ROM and will get the data
from the local CDDB or CDPlayer.ini files. This option does not save the
current track information before it overwrites it with the data from the local CDDB
or CDPlayer.ini files - so be careful with this option!


\section{Convert Menu Options}\index{Convert Menu}
\subsection{Extract CD Track(s) to WAV files:}\index{Extract WAV files}
\winhelponly{\special{#\{\footnote HID_TRACKS2WAV\}}}

This option allows you to extract the selected CD audio tracks each into
a WAV file.

\subsection{Extract CD Track(s) to MPEG files:}\index{Extract MPEG files}
\winhelponly{\special{#\{\footnote HID_TRACKS2MP3\}}}

This option allows you to extract the selected CD audio tracks each into
a compressed file (e.g. MP3).


\subsection{Extract Partial CD Track:}\index{Extract partial track}
\winhelponly{\special{#\{\footnote HID_PTRACKS2MP3\}}}
\winhelponly{\special{#\{\footnote HIDD_PCOPYDIALOG\}}}


This option will extract a portion of the CD, into either a WAV file or
a compressed file. This might be useful when you want to merge several
tracks into one WAV or MP3 file. When selection this option, the following
window pops up.

$$\imagemap{1cm;0cm}{ExtractPartialTrack.bmp}{ExtractPartialTrack}$$

Within this window, you can select the first and last track number, including 
the start time and end time. Also you can specify the track name and whether it should
save it to a WAV or Encoded (MP3) file.



\subsection{Re-encode Compressed Audio Files:}\index{Re-encode Compressed Audio Files}
\winhelponly{\special{#\{\footnote HID_MPEGTOMPEG\}}}

The Re-encode Compressed Audio Files allows you re-encode (sometimes called transcode\index{transcode MPEG files})
\popref{Compressed Audio Files}{Compressed Audio Files} files (like Ogg, MP2, MP3 files etc). This option can be useful if,
for example, you want to encode a MP3 file to a lower bit rate. The \popref{ID3}{id3} tags (ID3 V1 or ID3 V2) are copied
from the source to the destination file as well.


\subsection{Convert WAV files to Compressed Audio Files:}\index{Convert WAV files to Compressed Audio Files}
\winhelponly{\special{#\{\footnote HID_WAV2MP3\}}}

When you select this option, a file selection window will appear. You can select several
(uncompressed) WAV files by holding down the SHIFT or CTRL button. Once they are selected, press the
OK button to encode each of the selected WAV file to a Ccompressed Audio File (the output
format of the Compressed Audio File is selected in the Encoder Settings TAB in the 
CDex configuration dialog box).


\subsection{Convert Compressed Audio Files to WAV files:}\index{Convert Compressed Audio Files to WAV files}
\winhelponly{\special{#\{\footnote HID_WAV2MP3\}}}

When you select this option, a file selection window will appear. You can select
several Compressed Audio Files by holding down the SHIFT or CTRL button. Once they are selected,
press the OK button to decode each of the selected Compressed Audio Files each to a (uncompressed)
WAV file.


\subsection{Add RIFF-WAV header to MP2/MP3 files:}\index{Add RIFF-WAV header to MP2/MP3 files}
\winhelponly{\special{#\{\footnote HID_MP3TORIFFWAV\}}}

When you select this option, a file dialog box will appear. You also can select
several MP2/MP3 files by holding down the SHIFT or CTRL button. Once selected,
press the OK button to add a RIFF-WAV header to each of the selected MP3/MP3 files.
See also the \helprefn{Output to Riff WAV section}{riffwavlabel}.


\subsection{Strip RIFF-WAV header from MP2/MP3 files:}\index{Strip RIFF-WAV header from MP2/MP3 files}
\winhelponly{\special{#\{\footnote HID_RIFFWAVTOMP3\}}}

This option will strip the RIFF-WAV header from the selected MP2/MP3 files.
See also the \helprefn{Output to Riff WAV section}{riffwavlabel}.


\section{Play Menu}\index{Play Menu}
\subsection{Play Files:}\index{Play Files}
\winhelponly{\special{#\{\footnote HID_PLAYFILES\}}}

As of version 1.30, CDex has a small player to listen to MP3 files. Select this
option to get access to the MP3 player.


\section{CDDB Menu}\index{CDDB Menu}

\subsection{Read from local CDDB:}\index{Read from local CDDB}
\winhelponly{\special{#\{\footnote HID_READLOCALCDDB\}}}

The track information of the current CD is read from the local CDDB.


\subsection{Read From Remote CDDB:}\index{Read From Remote CDDB}
\winhelponly{\special{#\{\footnote HID_READREMOTECDDB\}}}

The track information of the current CD is read from a remote CDDB server. If
you are not connected to the Internet, this may cause your computer to try to dial your ISP to connect.


\subsection{Read From CDPlayer.ini:}\index{Read From CDPlayer.ini}
\winhelponly{\special{#\{\footnote HID_READCDPLAYERINI\}}}

The album information of the current CD is read from the CDPlayer.ini file.

\subsection{Read CD-Text:}\index{Read CD-Text}
\winhelponly{\special{#\{\footnote ID_CDDB_READCDTEXT\}}}

Some newer audio CDs do contain album information on the CD itself (CD-Text).
If your drive supports CD-Text and you have an audio CD which contains this 
CD-Text information, this menu option will read the album information from 
the audio CD and store it in the local CDDB and/or CDPlayer.ini file 
(depending on the current settings).


\subsection{Save To Local CDDB:}\index{Save To Local CDDB}
\winhelponly{\special{#\{\footnote HID_CDDB_SAVETOLOCALCDDB\}}}

This menu options stores the current album information to the local CDDB database.


\subsection{Save To CDPlayer.ini:}\index{Save To CDPlayer.ini}
\winhelponly{\special{#\{\footnote HID_CDDB_SAVETOCDPLAYERINI\}}}

This controls whether the track information (for albums that you put in the drive
while CDex is running) is stored to the CDPlayer.ini file.


\subsection{Submit to Remote CDDB:}\index{Submit to Remote CDDB}
\winhelponly{\special{#\{\footnote HID_CDDB_SUBMITTOREMOTECDDB\}}}

If you have an audio CD which is not known to the remote CDDB database, and
you have filled out the track and artist information, you can upload this
information to the remote CDDB database using this option.


\subsection{CDDB Batch Query:}\index{CDDB Batch Query}
\winhelponly{\special{#\{\footnote HID_CDDB_BATCH_QUERY\}}}

This menu option will query all pending CDDB queries.

Here's how it works:
when you insert a CD, and it is not found in the local CDDB or CDPlayer.ini,
CDex will add an entry in the CDDB Batch query file (CDDB_Batch.txt file located
in the CDex directory). Once you select the CDDB Batch Query menu option, it 
will gather the CD information of the pending disc entries (i.e. the albums
specified in the CDDB_Batch.txt file), and it will save the disc information into
the local CDDB and/or CDPlayer.ini files, depending on your current settings.


This option can be very useful for people who have a dial-up Internet connection,
so you can keep the on-line time to a minimum.  That is, if you are going to rip
tracks from two dozen new CDs, you can put the disks one at a time into the drive
while CDex is running.  Even though you aren't ripping any tracks,
will CDex can see that these are all albums that it needs to look up, and it will
note this in CDDB_Batch.txt.  Then you can log in, do a batch query, and log out.
And then you can actually start putting the discs in and ripping tracks, since now
when you put the CDs in, the album info will be there (assuming that the albums
are actually known to the CDDB you used, as they generally are).

You may want to delete your CDDB_Batch.txt file from time to time,
to avoid re-querying for albums that you no longer care about and that were
no found in CDDB (like a mix CD that you put together for yourself, which won't
be in a CDDB).


\section{Options Menu}\index{Options Menu}


\subsection{Settings:}

See section \helprefn{configure CDex}{configurecdex} for more details.


\subsection{View Play:}\index{View Play}
\winhelponly{\special{#\{\footnote HID_VIEWPLAYBAR\}}}

This option allows you to turn on or off the play toolbar.


\subsection{View Record:}\index{View Record}
\winhelponly{\special{#\{\footnote HID_VIEWRECORDBAR\}}}

This option allows you to turn on or off the record toolbar.


\subsection{View Ripping Status Details:}\index{View Ripping status}
\winhelponly{\special{#\{\footnote HID_VIEWRIPSTATUS\}}}

Select this option if you want to have more detailed information about the
ripping status. This option is useful when you want to examine where jitter 
errors have occurred during the ripping process. If jitter errors have occurred, these 
errors are indicated with an X in the track list window (in the Status column).
The Ripping Status will display more detailed information about which block
the jitter error(s) occurred in.


\subsection{Clear Ripping Status:}\index{Clear Ripping Status}
\winhelponly{\special{#\{\footnote HID_OPTION_CLEARSTATUS\}}}

Select this option to clear the ripping status.


\section{Help Menu}\index{Help Menu}


\subsection{Help Topics:}\index{Help Topics}
Select this option to start the CDex help.


\subsection{About CDex:}\index{About CDex}

\winhelponly{\special{#\{\footnote HIDD_ABOUTBOX\}}}

When you select this option, a dialog box with the CDex Logo,
version number and copyright notice will be shown.

\chapter{CDex Player}\label{cdexplayer}
\index{CDex Player}
\winhelponly{\special{#\{\footnote HIDR_PLAYERFRAME\}}}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

CDex contains a small Media Player and playlist editor. The main player screen
is shown in the following figure:

$$\imagemap{1cm;0cm}{CDexFilePlayer.bmp}{CDexFilePlayer}$$

The player can operate independent of the main CDex ripper program. The main window contains
a file list, the so-called playlist. Files can be added by either dragging
and dropping files into the CDex Player window, or by selecting the "Select Files"
button on the toolbar. 

The file types that can be played with the CDex Player depends on the available
Winamp plugins that have been installed in the Plugins directory. By selecting
Configure/Configure Winamp Plugins menu option from the main menu, you can see
which plugins are installed (and recognized) by CDex. 


\chapter{Record Files}\label{recordfiles}
\index{CDex Player}
\winhelponly{\special{#\{\footnote HIDD_RECORDFILES\}}}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

CDex contains an option to record sound files using your sound card. When selecting 
"Tools / Record Files" the following dialog will be displayed:

$$\imagemap{1cm;0cm}{RecordFiles.bmp}{RecordFiles}$$

You can either specify time-limited recording (meaning that when
you hit Record, it will stop recording after that many seconds), or you can use the free length
encoding (meaning that when you hit Record, only Stop will stop the recording).

Also, you can specify the output encoder.

However, whether this will work or not, depends on the
system configuration and selected encoder.  If your system
is not fast enough to do real time recorder+encoding (i.e., if it can't encode the data
as fast as it's coming from the input), you will have to select the WAV output
type and optionally convert the files to the desired output format (encoding it in two
steps).  Also remember that recording to WAV will use a lot more disk space.

One simple way to guess whether your system is fast enough to keep with real-time
encoding with a particular encoder, is to compare how long it takes that encoder
to encode a CD drack, compared to the play-time of that itself.  If you experiment and
find that on your system, LAME (with your settings) encodes a {\bf five}-minute track in
about {\bf one} minute, then that means your LAME (with those settings) can encode
"five times faster than real-time".  So recording real-time data will be no trouble.
But (for example), if you try encoding that same five-minute track with an Ogg Vorbis
encoder with particular settings, and it takes {\bf six} minutes, then that encoder
(with your settings, on your current system) will not be able to handle real-time
encoding.  If it takes about {\bf four} minutes to encode that five-minute track, then
in theory, the encoder could keep up with the real-time input, but just barely,
so it might be a bit risky.

As processors become faster and faster, typical encoders (like MP3 encoders with
usual settings) can encode many times faster than real-time, so this should be
less and less of a problem.


\chapter{Troubleshooting}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}
\setfooter{\thepage}{}{}{}{}{\thepage}

This chapter has some information in case you have problems with CDex. It is
recommended though that you also read the CDex FAQ, which might have more
up-to-date information about your specific problem (see http://cdexos.sourceforge.net).


\section{System Information Dialog}\label{systeminfo}
\index{System Information Dialog}
\winhelponly{\special{#\{\footnote HIDD_GENINFO\}}}

The System Information dialog box displays information that is important
when you submit a bug report. For your convenience, you can let CDex copy
the information to the clipboard which you can paste (control-v) into you
e-mail program when you send in a bug report.


\section{Frequently Asked Question:}\index{Frequently Asked Question}

\subsection{Q: Winamp doesn't display the proper track duration. When I rip some 
music from a CD onto an MP3, the MP3 does not have any information on the music 
length. For example, when the file is opened in Winamp, there is no length of 
time shown. When opening MP3s that were not created with CDex, the music length 
for those files is shown. What's wrong?}

A: There was an incompatibility between Winamp which has been solved since version 2.72.
So please check your Winamp version, and upgrade if you have an older Winamp version.

\subsection{Q: When I extract MP3 files from a CD, I would like CDex to create 
'Napster Style' filenames (i.e. [artist]-[title].mp3) instead storing tracks 
into separate directories based on artist/album/trackname information, 
how can I do that?}

A: Just change the output filename format (press F4 and select the 
Filenames tab) to \%1-\%4 and you should be set. Take a look at the help file
for more details about what options you can use for the output filename format.


\subsection{Q: At home, I can access the CDDB database, but when I use CDex 
at my work place it won't work. Why not?}

A: At your work, you are almost certainly behind a firewall; so you 
have to select the Use Proxy option in the CDDB options dialog box (use 
F4 and press the CDDB-TAB). Also, you have to fill in the proxy 
address in the edit field next to the Use Proxy selection box (which 
should be enabled when you've selected the Use Proxy option), and you might
have to change the Proxy Port.  A tip: take a look at the proxy settings 
of your Web browser (e.g. Internet Explorer or Netscape) to determine 
the proxy address and proxy port.

\subsection{Q: When I try to access the CDDB database, I get an Invalid 
E-mail Address message}

A: You have to fill in the E-mail Address field in the CDDB 
options dialog box (use F4 and press the Remote CDDB tab).


\subsection{Q: I like to create filenames that have track number 
with a leading zero (so 01 02 03 etc instead of 1 2 3) }

A: Use the \%7 option in the output filename format instead of the 
\%3 option. The \%7 tag will be replaced with the track number, including 
a leading zero for single digit number (i.e. track 1..9) when 
creating the file name.


\subsection{Q: When I try to start CDex, it complains that it can't 
find the CDRip.dll file or Lame_enc.dll.}

A: Make sure that you unzip all the files (using WinZip 
or PowerArchiver, for example) into the CDex installation directory (or "folder" as 
it called nowadays).  Furthermore, make sure if you have created a 
desktop short-cut that the "Start In" field points to the directory 
where the CDex.exe and its DLLs reside (this is the folder in 
which you have extracted the files that were in the ZIP)

\subsection{Q: Is it possible, using CDex, to save several CD tracks all into a single
WAV or MP3 file?}\index{Merge tracks}

A: What you can do, is select several tracks and hit the Partial Track
copy.  With this option you can select a range {\bf which can span several tracks},
to rip or encode into one (potentially large!) file.


\subsection{Q: I get an message that there is too much jitter, what do I have 
to do to solve this problem?}

First make sure you have installed the proper ASPI drivers; most problems
I've seen are related to the ASPI drivers (not properly installed or out-of-date ASPI drivers).
Furthermore, you can try to increase the Read Overlap value in the configuration dialog
box (i.e., press Configure from the main dialog box). The overlap and 
block compare value are restricted; make sure that the sum of the two does not 
exceed 27.

Also, setting the CD Speed to 1 might help to reduce 
jitter errors (you have to do some experimenting to find out what works best 
with your drive). Also, cheap CD-ROM drives can produce a lot of errors. If you can 
not resolve the jitter errors by applying the tips above, it is probably time to 
upgrade your CD-ROM drive.

\subsection{Q: Can I convert MP3 files back to WAV files?}

A: Yes, CDex version 1.0 and up can convert MP3 files back to WAV files.


\subsection{Q: When I extract files, there are is no music information, just dead
silence}\index{No Music}\index{Silent WAV files}

This problem might be a couple of things:

\begin{itemize}
\itemsep=0pt
\item Make sure that you have installed the proper ASPI drivers. This following
link:

http://users.westnet.gr/~vamp71/rippers/aspi.htm

has information how to install the proper ASPI drivers (version Adaptec's
ASPI version 4.54 or 4.57 should work). You might run the ASPI check utility
to make sure that the ASPI drivers are properly installed.
\item Make sure your drive does support CDDA

see http://www.mp3.com/cdrom.html

to determine if your drive does support CDDA

\item Some CD-ROM drives cannot read more than 27 sectors at once. You might
try to reduce the Read Sectors value.
\item Try the \helprefn{Auto Detect}{autodetect} feature.
\end{itemize}


\subsection{Q: When I convert/rip MP3 files, CDex is slow as molasses; what's wrong
with my system?}

A: Well nothing, I would say. Audio compression needs a lot of computation
power. To get an idea about the encoding time: on a Pentium 166-MMX, with
32 Mb of SD-RAM, a one minute song will take about 2.5 minutes to encode.
However, with certain CD-ROM drives you might get better ripping
performance when you set the CD Speed to 32, but this might increase the
chance of jitter errors.

If you want your system to be more responsive while you're encoding,
turn the CDex threat priority down.  You can set this by hitting F4, choose
the "Encoder" tap, and choose the "Thread Priority" pulldown.  This will
make encoding take longer, though.


\subsection{Q: The ripping status window says that I have jitter problems; what does that mean?}\index{Jitter problems}

A: Well, you can try to increase the Read Overlap value in the configuration
dialog box. Furthermore make sure that the CD is clean; dirty discs can cause
jitter problems. So you may want to try another disc first. In addition, you can
increase the read overlap value a little, or try to set the CD Speed value to 1.

Also, some cheap CD-ROM drives produce a lot of errors. If you can not resolve
the jitter errors by applying the tips above, it is probably time to upgrade your CD-ROM drive.


\chapter{Keyboard Shortcuts}\label{shortcuts}
CDex knows the following keyboard shortcuts:

\begin{itemize}
\itemsep=0pt
\item F2 Rename Track
\item F3 View ripping status
\item F4 Configure CDex
\item F5 Refresh track list (re-read the Table of Contents and re-read CDDB
information)
\item F8 Rip selected tracks to a WAV file
\item F9 Rip selected track to a compressed file (like MP3)
\item F10 Partial track extraction
\item F11 Convert WAV to a compressed (MP3) files
\item F12 Convert compressed (MP3) file(s) to a WAV file(s)
\item Ctrl-A Select all tracks
\end{itemize}

\chapter{Bug reports and suggestions}\label{bugs}

{\bf IMPORTANT:}

{\bf Do not send me large attachments or large files!} If you have a problem,
please {\bf READ the Help File} first.  If this doesn't solve your problems, take
a look at the latest {\bf FAQ} on the website (http://cdexos.sourceforge.net), it may
have a solution for your problem(s). If you still have problems, {\bf then}
you can send me an e-mail describing your specific problems. Also include
as much as possible information, like:

\begin{itemize}
\item Which version of CDex do you use?
\item What ASPI drivers do you have installed on your system?
\item What kind of CD-ROM do you have (brand + type)?
\item What kind of CD-ROM settings do you use (Read Sectors and Read Overlap)?
\item Did you try the Auto Detect function yet?
\item Which encoder you have selected?
\item If the problem involves CDDB, are you behind a firewall?
\end{itemize}

And if something doesn't work, please explain in detail what you 
attempted to do.

{\bf Also} add the information which is displayed in the "System Info"
window, which you can get to from the "File" menu in CDex.
For your convenience, you can have CDex copy the information to the
clipboard, which you can paste (control-v) in your e-mail program.



\begin{helpglossary}
\setheader{{\it GLOSSARY}}{}{}{}{}{{\it GLOSSARY}}
\setfooter{\thepage}{}{}{}{}{\thepage}


\gloss{codec}\label{codec}
A codec is a "coder/decoder", a software library that supports a
particular kind of data storage by providing functions that
turn it to and from a more normal format.


\gloss{ID3}\label{id3}
ID3 (whether version 1 or 2) is the format for storing data, in
an MP3 file, about what the music is - song name, album name,
artist name, year, genre, track number, etc.


\gloss{Mouse Click}\label{mouseclick}
A mouse click is pressing and releasing the left mouse button on an item.


\gloss{MP3}\label{mp3}
An MP3 is the most common form of high-quality compressed audio
on the Internet.  It is typically stored in files with the extension
".mp3".


\gloss{MPEG}\label{mpeg}
For our purposes, "MPEG" is an alternate term for an
\popref{mp3 file}{mp3}.

MPEG stands for "Moving Picture Experts Group", the technical
committee that came up with the MP3 compression format.


\gloss{Fraunhofer}\label{Fraunhofer}
A German company that reportedly holds the patent to MP3.

See:  http://www.mp3.com/news/095.html


\gloss{Ogg}\label{ogg}
"Ogg" is the most common name for the Ogg Vorbis sound file format,
\popref{Fraunhofer}{patent}-free compression format.  Ogg
files typically have slightly
better quality than MP3s of the same size, but take a longer
to encode.  Ogg Vorbis files typically have the extension ".ogg".

See: http://www.vorbis.com/


\gloss{RIFF}\label{riff}
RIFF ("Resource Interchange File Format") is a file format used by
Microsoft, typically with the ".wav" extension (just like
\popref{WAV files}{wav}.).  A RIFF file can contain
various kinds of compression (including MP3) and metadata.

Since Windows takes care of interpreting RIFF files, you can used put
\popref{MP3}{mp3}-compressed data into a RIFF file, and applications
that don't directly understand MP3 should be able to handle the
resulting file (assuming MSWindows has a codec for MP3).


\gloss{WAV}\label{wav}
A WAV ("waveform") file is a Microsoft file format that usually
contains audio data sampled at 16 bit stereo, 44,100 samples per
second (CD quality).

However, WAV files can contain other qualities of data, even
a few kinds of compression.

\popref{RIFF files}{riff} files typically have a ".wav"
extension, making them hard to tell from normal WAV files.


\end{helpglossary}

\addcontentsline{toc}{chapter}{Index}
\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}
\setfooter{\thepage}{}{}{}{}{\thepage}
\printindex

\end{document}

